// $ANTLR 3.0.1 F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g 2008-04-16 22:47:38

package de.ghost23.stubcodegenerator.recognize;


import org.antlr.runtime.*;

public class stubcodegrammarLexer extends Lexer {
    public static final int T21=21;
    public static final int LETTER=16;
    public static final int DEDENT=5;
    public static final int SLASH=8;
    public static final int T22=22;
    public static final int WS=20;
    public static final int STRING=7;
    public static final int TAB=12;
    public static final int T23=23;
    public static final int DOLLAR=9;
    public static final int BLANKLINE=13;
    public static final int QUOTE=19;
    public static final int NEWLINE=11;
    public static final int EQUALS=6;
    public static final int EOF=-1;
    public static final int INDENT=4;
    public static final int Tokens=24;
    public static final int DIGIT=15;
    public static final int DASH=18;
    public static final int UNDERSCORE=17;
    public static final int CHANGE_INDENT=14;
    public static final int ID=10;
    
    	int currentIndentation = 0;

    public stubcodegrammarLexer() {;} 
    public stubcodegrammarLexer(CharStream input) {
        super(input);
    }
    public String getGrammarFileName() { return "F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g"; }

    // $ANTLR start T21
    public final void mT21() throws RecognitionException {
        try {
            int _type = T21;
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:13:5: ( 'c' )
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:13:7: 'c'
            {
            match('c'); 

            }

            this.type = _type;
        }
        finally {
        }
    }
    // $ANTLR end T21

    // $ANTLR start T22
    public final void mT22() throws RecognitionException {
        try {
            int _type = T22;
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:14:5: ( 'i' )
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:14:7: 'i'
            {
            match('i'); 

            }

            this.type = _type;
        }
        finally {
        }
    }
    // $ANTLR end T22

    // $ANTLR start T23
    public final void mT23() throws RecognitionException {
        try {
            int _type = T23;
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:15:5: ( 't' )
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:15:7: 't'
            {
            match('t'); 

            }

            this.type = _type;
        }
        finally {
        }
    }
    // $ANTLR end T23

    // $ANTLR start BLANKLINE
    public final void mBLANKLINE() throws RecognitionException {
        try {
            int _type = BLANKLINE;
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:106:2: ( NEWLINE ( TAB )* NEWLINE )
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:106:4: NEWLINE ( TAB )* NEWLINE
            {
            mNEWLINE(); 
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:106:12: ( TAB )*
            loop1:
            do {
                int alt1=2;
                int LA1_0 = input.LA(1);

                if ( (LA1_0=='\t') ) {
                    alt1=1;
                }


                switch (alt1) {
            	case 1 :
            	    // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:106:12: TAB
            	    {
            	    mTAB(); 

            	    }
            	    break;

            	default :
            	    break loop1;
                }
            } while (true);

            mNEWLINE(); 
            skip();

            }

            this.type = _type;
        }
        finally {
        }
    }
    // $ANTLR end BLANKLINE

    // $ANTLR start CHANGE_INDENT
    public final void mCHANGE_INDENT() throws RecognitionException {
        try {
            int _type = CHANGE_INDENT;
            
                int tb = 0;

            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:112:2: ( ( NEWLINE | BLANKLINE ) ( TAB )* )
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:112:4: ( NEWLINE | BLANKLINE ) ( TAB )*
            {
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:112:4: ( NEWLINE | BLANKLINE )
            int alt2=2;
            alt2 = dfa2.predict(input);
            switch (alt2) {
                case 1 :
                    // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:112:5: NEWLINE
                    {
                    mNEWLINE(); 

                    }
                    break;
                case 2 :
                    // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:112:13: BLANKLINE
                    {
                    mBLANKLINE(); 

                    }
                    break;

            }

            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:112:24: ( TAB )*
            loop3:
            do {
                int alt3=2;
                int LA3_0 = input.LA(1);

                if ( (LA3_0=='\t') ) {
                    alt3=1;
                }


                switch (alt3) {
            	case 1 :
            	    // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:112:25: TAB
            	    {
            	    mTAB(); 
            	    tb++;

            	    }
            	    break;

            	default :
            	    break loop3;
                }
            } while (true);

            
            			if(tb > currentIndentation) {
            				emit(new CommonToken(INDENT));
            			}else if(tb < currentIndentation) {
            				for(int i = 0; i < currentIndentation - tb; i++) {
            					emit(new CommonToken(DEDENT));
            				}
            			}else {
            				skip();
            			}
            			currentIndentation = tb;
            		

            }

            this.type = _type;
        }
        finally {
        }
    }
    // $ANTLR end CHANGE_INDENT

    // $ANTLR start ID
    public final void mID() throws RecognitionException {
        try {
            int _type = ID;
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:125:4: ( ( DIGIT | LETTER | UNDERSCORE | DASH )+ )
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:125:6: ( DIGIT | LETTER | UNDERSCORE | DASH )+
            {
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:125:6: ( DIGIT | LETTER | UNDERSCORE | DASH )+
            int cnt4=0;
            loop4:
            do {
                int alt4=5;
                switch ( input.LA(1) ) {
                case '0':
                case '1':
                case '2':
                case '3':
                case '4':
                case '5':
                case '6':
                case '7':
                case '8':
                case '9':
                    {
                    alt4=1;
                    }
                    break;
                case 'A':
                case 'B':
                case 'C':
                case 'D':
                case 'E':
                case 'F':
                case 'G':
                case 'H':
                case 'I':
                case 'J':
                case 'K':
                case 'L':
                case 'M':
                case 'N':
                case 'O':
                case 'P':
                case 'Q':
                case 'R':
                case 'S':
                case 'T':
                case 'U':
                case 'V':
                case 'W':
                case 'X':
                case 'Y':
                case 'Z':
                case 'a':
                case 'b':
                case 'c':
                case 'd':
                case 'e':
                case 'f':
                case 'g':
                case 'h':
                case 'i':
                case 'j':
                case 'k':
                case 'l':
                case 'm':
                case 'n':
                case 'o':
                case 'p':
                case 'q':
                case 'r':
                case 's':
                case 't':
                case 'u':
                case 'v':
                case 'w':
                case 'x':
                case 'y':
                case 'z':
                    {
                    alt4=2;
                    }
                    break;
                case '_':
                    {
                    alt4=3;
                    }
                    break;
                case '-':
                    {
                    alt4=4;
                    }
                    break;

                }

                switch (alt4) {
            	case 1 :
            	    // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:125:8: DIGIT
            	    {
            	    mDIGIT(); 

            	    }
            	    break;
            	case 2 :
            	    // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:126:5: LETTER
            	    {
            	    mLETTER(); 

            	    }
            	    break;
            	case 3 :
            	    // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:127:5: UNDERSCORE
            	    {
            	    mUNDERSCORE(); 

            	    }
            	    break;
            	case 4 :
            	    // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:128:5: DASH
            	    {
            	    mDASH(); 

            	    }
            	    break;

            	default :
            	    if ( cnt4 >= 1 ) break loop4;
                        EarlyExitException eee =
                            new EarlyExitException(4, input);
                        throw eee;
                }
                cnt4++;
            } while (true);


            }

            this.type = _type;
        }
        finally {
        }
    }
    // $ANTLR end ID

    // $ANTLR start STRING
    public final void mSTRING() throws RecognitionException {
        try {
            int _type = STRING;
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:133:2: ( '\"' ( '\\\\' | ~ ( '\\\\' | '\\n' | '\"' ) )* '\"' )
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:133:4: '\"' ( '\\\\' | ~ ( '\\\\' | '\\n' | '\"' ) )* '\"'
            {
            match('\"'); 
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:133:8: ( '\\\\' | ~ ( '\\\\' | '\\n' | '\"' ) )*
            loop5:
            do {
                int alt5=2;
                int LA5_0 = input.LA(1);

                if ( ((LA5_0>='\u0000' && LA5_0<='\t')||(LA5_0>='\u000B' && LA5_0<='!')||(LA5_0>='#' && LA5_0<='\uFFFE')) ) {
                    alt5=1;
                }


                switch (alt5) {
            	case 1 :
            	    // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:
            	    {
            	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='\uFFFE') ) {
            	        input.consume();

            	    }
            	    else {
            	        MismatchedSetException mse =
            	            new MismatchedSetException(null,input);
            	        recover(mse);    throw mse;
            	    }


            	    }
            	    break;

            	default :
            	    break loop5;
                }
            } while (true);

            match('\"'); 

            }

            this.type = _type;
        }
        finally {
        }
    }
    // $ANTLR end STRING

    // $ANTLR start DOLLAR
    public final void mDOLLAR() throws RecognitionException {
        try {
            int _type = DOLLAR;
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:135:8: ( '$' )
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:135:10: '$'
            {
            match('$'); 

            }

            this.type = _type;
        }
        finally {
        }
    }
    // $ANTLR end DOLLAR

    // $ANTLR start UNDERSCORE
    public final void mUNDERSCORE() throws RecognitionException {
        try {
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:137:11: ( '_' )
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:137:13: '_'
            {
            match('_'); 

            }

        }
        finally {
        }
    }
    // $ANTLR end UNDERSCORE

    // $ANTLR start DASH
    public final void mDASH() throws RecognitionException {
        try {
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:139:6: ( '-' )
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:139:8: '-'
            {
            match('-'); 

            }

        }
        finally {
        }
    }
    // $ANTLR end DASH

    // $ANTLR start SLASH
    public final void mSLASH() throws RecognitionException {
        try {
            int _type = SLASH;
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:140:7: ( '/' )
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:140:9: '/'
            {
            match('/'); 

            }

            this.type = _type;
        }
        finally {
        }
    }
    // $ANTLR end SLASH

    // $ANTLR start QUOTE
    public final void mQUOTE() throws RecognitionException {
        try {
            int _type = QUOTE;
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:141:7: ( '\"' )
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:141:9: '\"'
            {
            match('\"'); 

            }

            this.type = _type;
        }
        finally {
        }
    }
    // $ANTLR end QUOTE

    // $ANTLR start EQUALS
    public final void mEQUALS() throws RecognitionException {
        try {
            int _type = EQUALS;
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:142:8: ( '=' )
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:142:10: '='
            {
            match('='); 

            }

            this.type = _type;
        }
        finally {
        }
    }
    // $ANTLR end EQUALS

    // $ANTLR start LETTER
    public final void mLETTER() throws RecognitionException {
        try {
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:145:8: ( ( 'a' .. 'z' ) | ( 'A' .. 'Z' ) )
            int alt6=2;
            int LA6_0 = input.LA(1);

            if ( ((LA6_0>='a' && LA6_0<='z')) ) {
                alt6=1;
            }
            else if ( ((LA6_0>='A' && LA6_0<='Z')) ) {
                alt6=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("144:1: fragment LETTER : ( ( 'a' .. 'z' ) | ( 'A' .. 'Z' ) );", 6, 0, input);

                throw nvae;
            }
            switch (alt6) {
                case 1 :
                    // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:145:10: ( 'a' .. 'z' )
                    {
                    // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:145:10: ( 'a' .. 'z' )
                    // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:145:11: 'a' .. 'z'
                    {
                    matchRange('a','z'); 

                    }


                    }
                    break;
                case 2 :
                    // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:145:21: ( 'A' .. 'Z' )
                    {
                    // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:145:21: ( 'A' .. 'Z' )
                    // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:145:22: 'A' .. 'Z'
                    {
                    matchRange('A','Z'); 

                    }


                    }
                    break;

            }
        }
        finally {
        }
    }
    // $ANTLR end LETTER

    // $ANTLR start DIGIT
    public final void mDIGIT() throws RecognitionException {
        try {
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:147:7: ( ( '0' .. '9' )+ )
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:147:9: ( '0' .. '9' )+
            {
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:147:9: ( '0' .. '9' )+
            int cnt7=0;
            loop7:
            do {
                int alt7=2;
                int LA7_0 = input.LA(1);

                if ( ((LA7_0>='0' && LA7_0<='9')) ) {
                    alt7=1;
                }


                switch (alt7) {
            	case 1 :
            	    // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:147:10: '0' .. '9'
            	    {
            	    matchRange('0','9'); 

            	    }
            	    break;

            	default :
            	    if ( cnt7 >= 1 ) break loop7;
                        EarlyExitException eee =
                            new EarlyExitException(7, input);
                        throw eee;
                }
                cnt7++;
            } while (true);


            }

        }
        finally {
        }
    }
    // $ANTLR end DIGIT

    // $ANTLR start TAB
    public final void mTAB() throws RecognitionException {
        try {
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:150:6: ( '\\t' )
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:150:8: '\\t'
            {
            match('\t'); 

            }

        }
        finally {
        }
    }
    // $ANTLR end TAB

    // $ANTLR start NEWLINE
    public final void mNEWLINE() throws RecognitionException {
        try {
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:153:9: ( ( '\\r' )? '\\n' )
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:153:11: ( '\\r' )? '\\n'
            {
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:153:11: ( '\\r' )?
            int alt8=2;
            int LA8_0 = input.LA(1);

            if ( (LA8_0=='\r') ) {
                alt8=1;
            }
            switch (alt8) {
                case 1 :
                    // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:153:11: '\\r'
                    {
                    match('\r'); 

                    }
                    break;

            }

            match('\n'); 

            }

        }
        finally {
        }
    }
    // $ANTLR end NEWLINE

    // $ANTLR start WS
    public final void mWS() throws RecognitionException {
        try {
            int _type = WS;
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:155:4: ( ( ' ' )+ )
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:155:6: ( ' ' )+
            {
            // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:155:6: ( ' ' )+
            int cnt9=0;
            loop9:
            do {
                int alt9=2;
                int LA9_0 = input.LA(1);

                if ( (LA9_0==' ') ) {
                    alt9=1;
                }


                switch (alt9) {
            	case 1 :
            	    // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:155:6: ' '
            	    {
            	    match(' '); 

            	    }
            	    break;

            	default :
            	    if ( cnt9 >= 1 ) break loop9;
                        EarlyExitException eee =
                            new EarlyExitException(9, input);
                        throw eee;
                }
                cnt9++;
            } while (true);

            channel=HIDDEN;

            }

            this.type = _type;
        }
        finally {
        }
    }
    // $ANTLR end WS

    public void mTokens() throws RecognitionException {
        // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:1:8: ( T21 | T22 | T23 | BLANKLINE | CHANGE_INDENT | ID | STRING | DOLLAR | SLASH | QUOTE | EQUALS | WS )
        int alt10=12;
        alt10 = dfa10.predict(input);
        switch (alt10) {
            case 1 :
                // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:1:10: T21
                {
                mT21(); 

                }
                break;
            case 2 :
                // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:1:14: T22
                {
                mT22(); 

                }
                break;
            case 3 :
                // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:1:18: T23
                {
                mT23(); 

                }
                break;
            case 4 :
                // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:1:22: BLANKLINE
                {
                mBLANKLINE(); 

                }
                break;
            case 5 :
                // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:1:32: CHANGE_INDENT
                {
                mCHANGE_INDENT(); 

                }
                break;
            case 6 :
                // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:1:46: ID
                {
                mID(); 

                }
                break;
            case 7 :
                // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:1:49: STRING
                {
                mSTRING(); 

                }
                break;
            case 8 :
                // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:1:56: DOLLAR
                {
                mDOLLAR(); 

                }
                break;
            case 9 :
                // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:1:63: SLASH
                {
                mSLASH(); 

                }
                break;
            case 10 :
                // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:1:69: QUOTE
                {
                mQUOTE(); 

                }
                break;
            case 11 :
                // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:1:75: EQUALS
                {
                mEQUALS(); 

                }
                break;
            case 12 :
                // F:\\visual_studio_2008\\StubCodeGenerator\\grammar\\stubcodegrammar.g:1:82: WS
                {
                mWS(); 

                }
                break;

        }

    }


    protected DFA2 dfa2 = new DFA2(this);
    protected DFA10 dfa10 = new DFA10(this);
    static final String DFA2_eotS =
        "\2\uffff\1\3\1\uffff\1\3\1\uffff";
    static final String DFA2_eofS =
        "\6\uffff";
    static final String DFA2_minS =
        "\2\12\1\11\1\uffff\1\11\1\uffff";
    static final String DFA2_maxS =
        "\1\15\1\12\1\15\1\uffff\1\15\1\uffff";
    static final String DFA2_acceptS =
        "\3\uffff\1\1\1\uffff\1\2";
    static final String DFA2_specialS =
        "\6\uffff}>";
    static final String[] DFA2_transitionS = {
            "\1\2\2\uffff\1\1",
            "\1\2",
            "\1\4\1\5\2\uffff\1\5",
            "",
            "\1\4\1\5\2\uffff\1\5",
            ""
    };

    static final short[] DFA2_eot = DFA.unpackEncodedString(DFA2_eotS);
    static final short[] DFA2_eof = DFA.unpackEncodedString(DFA2_eofS);
    static final char[] DFA2_min = DFA.unpackEncodedStringToUnsignedChars(DFA2_minS);
    static final char[] DFA2_max = DFA.unpackEncodedStringToUnsignedChars(DFA2_maxS);
    static final short[] DFA2_accept = DFA.unpackEncodedString(DFA2_acceptS);
    static final short[] DFA2_special = DFA.unpackEncodedString(DFA2_specialS);
    static final short[][] DFA2_transition;

    static {
        int numStates = DFA2_transitionS.length;
        DFA2_transition = new short[numStates][];
        for (int i=0; i<numStates; i++) {
            DFA2_transition[i] = DFA.unpackEncodedString(DFA2_transitionS[i]);
        }
    }

    class DFA2 extends DFA {

        public DFA2(BaseRecognizer recognizer) {
            this.recognizer = recognizer;
            this.decisionNumber = 2;
            this.eot = DFA2_eot;
            this.eof = DFA2_eof;
            this.min = DFA2_min;
            this.max = DFA2_max;
            this.accept = DFA2_accept;
            this.special = DFA2_special;
            this.transition = DFA2_transition;
        }
        public String getDescription() {
            return "112:4: ( NEWLINE | BLANKLINE )";
        }
    }
    static final String DFA10_eotS =
        "\1\uffff\1\14\1\15\1\16\1\uffff\1\17\1\uffff\1\23\10\uffff\1\17"+
        "\1\uffff\1\25\3\uffff";
    static final String DFA10_eofS =
        "\26\uffff";
    static final String DFA10_minS =
        "\1\12\3\55\1\12\1\11\1\uffff\1\0\10\uffff\1\11\1\12\1\11\3\uffff";
    static final String DFA10_maxS =
        "\4\172\1\12\1\15\1\uffff\1\ufffe\10\uffff\1\15\1\12\1\11\3\uffff";
    static final String DFA10_acceptS =
        "\6\uffff\1\6\1\uffff\1\10\1\11\1\13\1\14\1\1\1\2\1\3\1\5\3\uffff"+
        "\1\12\1\7\1\4";
    static final String DFA10_specialS =
        "\26\uffff}>";
    static final String[] DFA10_transitionS = {
            "\1\5\2\uffff\1\4\22\uffff\1\13\1\uffff\1\7\1\uffff\1\10\10\uffff"+
            "\1\6\1\uffff\1\11\12\6\3\uffff\1\12\3\uffff\32\6\4\uffff\1\6"+
            "\1\uffff\2\6\1\1\5\6\1\2\12\6\1\3\6\6",
            "\1\6\2\uffff\12\6\7\uffff\32\6\4\uffff\1\6\1\uffff\32\6",
            "\1\6\2\uffff\12\6\7\uffff\32\6\4\uffff\1\6\1\uffff\32\6",
            "\1\6\2\uffff\12\6\7\uffff\32\6\4\uffff\1\6\1\uffff\32\6",
            "\1\5",
            "\1\20\1\22\2\uffff\1\21",
            "",
            "\12\24\1\uffff\ufff4\24",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "\1\20\1\22\2\uffff\1\21",
            "\1\22",
            "\1\17",
            "",
            "",
            ""
    };

    static final short[] DFA10_eot = DFA.unpackEncodedString(DFA10_eotS);
    static final short[] DFA10_eof = DFA.unpackEncodedString(DFA10_eofS);
    static final char[] DFA10_min = DFA.unpackEncodedStringToUnsignedChars(DFA10_minS);
    static final char[] DFA10_max = DFA.unpackEncodedStringToUnsignedChars(DFA10_maxS);
    static final short[] DFA10_accept = DFA.unpackEncodedString(DFA10_acceptS);
    static final short[] DFA10_special = DFA.unpackEncodedString(DFA10_specialS);
    static final short[][] DFA10_transition;

    static {
        int numStates = DFA10_transitionS.length;
        DFA10_transition = new short[numStates][];
        for (int i=0; i<numStates; i++) {
            DFA10_transition[i] = DFA.unpackEncodedString(DFA10_transitionS[i]);
        }
    }

    class DFA10 extends DFA {

        public DFA10(BaseRecognizer recognizer) {
            this.recognizer = recognizer;
            this.decisionNumber = 10;
            this.eot = DFA10_eot;
            this.eof = DFA10_eof;
            this.min = DFA10_min;
            this.max = DFA10_max;
            this.accept = DFA10_accept;
            this.special = DFA10_special;
            this.transition = DFA10_transition;
        }
        public String getDescription() {
            return "1:1: Tokens : ( T21 | T22 | T23 | BLANKLINE | CHANGE_INDENT | ID | STRING | DOLLAR | SLASH | QUOTE | EQUALS | WS );";
        }
    }
 

}